# သင့် Dataset ကို Annotation လုပ်ခြင်း[[annotate-your-dataset]]

<CourseFloatingBanner
    chapter={10}
    classNames="absolute z-10 right-0 top-0"
/>

အခုတော့ ကျွန်တော်တို့ရဲ့ dataset ကို annotation လုပ်ဖို့ Argilla UI ကနေ စတင်အလုပ်လုပ်ရမယ့် အချိန်ရောက်ပါပြီ။

## Annotation Guidelines များနှင့် သင့်အဖွဲ့ကို ညှိနှိုင်းပါ

သင့် dataset ကို annotation မလုပ်ခင်မှာ guidelines အချို့ကို ရေးသားထားတာဟာ အမြဲတမ်း ကောင်းမွန်တဲ့ အလေ့အကျင့်တစ်ခုပါပဲ၊ အထူးသဖြင့် သင်အဖွဲ့နဲ့ အလုပ်လုပ်နေတယ်ဆိုရင်ပေါ့။ ဒါက သင့်ကို task နဲ့ မတူညီတဲ့ labels တွေကို အသုံးပြုရာမှာ ညှိနှိုင်းနိုင်စေပြီး၊ မေးခွန်းတွေ ဒါမှမဟုတ် ပဋိပက္ခတွေ ပေါ်လာတဲ့အခါ ဖြေရှင်းနိုင်စေမှာပါ။

Argilla မှာ၊ သင်ဟာ UI ထဲက သင့် dataset settings page ကို သွားပြီး guidelines တွေနဲ့ သင့်မေးခွန်းတွေရဲ့ descriptions တွေကို ပြင်ဆင်နိုင်ပါတယ်။ ဒါက ညှိနှိုင်းမှုမှာ ကူညီပေးပါလိမ့်မယ်။

<img src="https://huggingface.co/datasets/huggingface-course/documentation-images/resolve/main/en/chapter10/argilla_dataset_settings.png" alt="Screenshot of the Dataset Settings page in Argilla."/>

ကောင်းမွန်တဲ့ guidelines တွေကို ဘယ်လိုရေးရမလဲဆိုတဲ့ ခေါင်းစဉ်ကို ပိုပြီး နက်နက်နဲနဲ လေ့လာချင်တယ်ဆိုရင်၊ [ဒီ blogpost](https://argilla.io/blog/annotation-guidelines-practices) နဲ့ အဲဒီမှာ ဖော်ပြထားတဲ့ ကိုးကားစာပေတွေကို ဖတ်ရှုဖို့ ကျွန်တော်တို့ အကြံပြုပါတယ်။

## Task ကို ဖြန့်ဝေခြင်း

dataset settings page မှာ၊ သင်ဟာ dataset distribution settings တွေကိုလည်း ပြောင်းလဲနိုင်ပါတယ်။ ဒါက သင်အဖွဲ့နဲ့ အလုပ်လုပ်နေတဲ့အခါ ပိုမိုထိရောက်စွာ annotation လုပ်နိုင်ဖို့ ကူညီပါလိမ့်မယ်။ minimum submitted responses အတွက် default value က ၁ ဖြစ်ပါတယ်။ ဆိုလိုတာက record တစ်ခုမှာ submitted response ၁ ခု ရတာနဲ့ ဒါကို complete ဖြစ်တယ်လို့ သတ်မှတ်ပြီး သင့် dataset ရဲ့ progress မှာ ထည့်သွင်းရေတွက်ပါလိမ့်မယ်။

တစ်ခါတစ်ရံမှာ၊ record တစ်ခုစီအတွက် submitted response တစ်ခုထက်ပိုတာကို သင်လိုချင်ပါတယ်။ ဥပမာ၊ သင့် task မှာ inter-annotator agreement ကို analyze လုပ်ချင်တယ်ဆိုရင်ပေါ့။ ဒီလိုအခြေအနေမျိုးမှာ၊ ဒီ setting ကို ပိုမြင့်တဲ့ number တစ်ခုသို့ ပြောင်းလဲဖို့ သေချာပါစေ၊ ဒါပေမယ့် စုစုပေါင်း annotators အရေအတွက်ထက် အမြဲတမ်း နည်းရပါမယ် ဒါမှမဟုတ် ညီမျှရပါမယ်။ သင်တစ်ယောက်တည်း task ကို လုပ်ဆောင်နေတယ်ဆိုရင်၊ ဒီ setting ကို ၁ ဖြစ်ဖို့ လိုအပ်ပါတယ်။

## Records များကို Annotation လုပ်ခြင်း

>[!TIP]
>💡 သင် Argilla ကို Hugging Face Space မှာ deploy လုပ်ထားတယ်ဆိုရင်၊ မည်သည့် team members မဆို Hugging Face OAuth ကို အသုံးပြုပြီး log in ဝင်နိုင်ပါလိမ့်မယ်။ မဟုတ်ရင်၊ ၎င်းတို့အတွက် users တွေ ဖန်တီးဖို့ [ဒီလမ်းညွှန်](https://docs.argilla.io/latest/how_to_guides/user/) ကို လိုက်နာဖို့ လိုအပ်နိုင်ပါတယ်။

သင် dataset ကို ဖွင့်လိုက်တဲ့အခါ၊ ပထမဆုံးမေးခွန်းက အကြံပြုထားတဲ့ labels အချို့နဲ့ ပြည့်နေတာကို သတိထားမိပါလိမ့်မယ်။ ဒါက ဘာလို့လဲဆိုတော့ ယခင်အပိုင်းမှာ ကျွန်တော်တို့ရဲ့ `label` လို့ခေါ်တဲ့ မေးခွန်းကို dataset ထဲက `label_text` column နဲ့ map လုပ်ခဲ့လို့ပါ။ ဒါကြောင့် ကျွန်တော်တို့ဟာ ရှိပြီးသား labels တွေကို ပြန်လည်စစ်ဆေးပြီး ပြင်ဆင်ဖို့ပဲ လိုအပ်ပါတယ်။

<img src="https://huggingface.co/datasets/huggingface-course/documentation-images/resolve/main/en/chapter10/argilla_initial_dataset.png" alt="Screenshot of the dataset in Argilla."/>

token classification အတွက်ကတော့၊ ကျွန်တော်တို့ suggestions တွေ မထည့်သွင်းခဲ့တဲ့အတွက် labels အားလုံးကို ကိုယ်တိုင် ထည့်သွင်းရပါလိမ့်မယ်။ span annotations တွေပြီးတဲ့အခါ ဒါက ဘယ်လိုပုံစံရှိမလဲဆိုတာ ဒီမှာပါ။

<img src="https://huggingface.co/datasets/huggingface-course/documentation-images/resolve/main/en/chapter10/argilla_dataset_with_spans.png" alt="Screenshot of the dataset in Argilla with spans annotated."/>

မတူညီတဲ့ records တွေဆီကို ရွှေ့ပြောင်းသွားတဲ့အခါ၊ သင်လုပ်ဆောင်နိုင်တဲ့ actions အမျိုးမျိုးရှိပါတယ်။
- record ပြီးတာနဲ့ သင့် responses တွေကို submit လုပ်ပါ။
- နောက်မှ ပြန်လာချင်တယ်ဆိုရင် draft အဖြစ် သိမ်းဆည်းထားပါ။
- record က dataset ရဲ့ အစိတ်အပိုင်း မဖြစ်သင့်ဘူးဆိုရင် ဒါမှမဟုတ် သင် responses တွေ မပေးတော့ဘူးဆိုရင် ၎င်းတို့ကို discard လုပ်ပါ။

နောက်အပိုင်းမှာတော့၊ အဲဒီ annotations တွေကို ဘယ်လို export လုပ်ပြီး အသုံးပြုရမလဲဆိုတာ သင်ယူရပါလိမ့်မယ်။

## ဝေါဟာရ ရှင်းလင်းချက် (Glossary)

*   **Argilla UI (User Interface)**: Argilla platform ကို အသုံးပြုသူများ အပြန်အလှန်ဆက်သွယ်နိုင်သော graphical interface။
*   **Annotation**: စာသား၊ ရုပ်ပုံ သို့မဟုတ် အခြားဒေတာများတွင် အဓိပ္ပာယ် သို့မဟုတ် labels များကို လူသားများက ထည့်သွင်းပေးခြင်း။
*   **Annotation Guidelines**: ဒေတာများကို annotation လုပ်ရာတွင် လိုက်နာရမည့် စည်းမျဉ်းများနှင့် ညွှန်ကြားချက်များ။
*   **Labels**: ဒေတာအမှတ်အသားပြုခြင်း (annotation) လုပ်ငန်းစဉ်တွင် ဒေတာအပိုင်းအစတစ်ခုကို ခွဲခြားသတ်မှတ်ရန် သို့မဟုတ် ဖော်ပြရန် အသုံးပြုသော အမျိုးအစားများ။
*   **Dataset Settings Page**: Argilla UI တွင် dataset ၏ ဖွဲ့စည်းမှုနှင့် အခြားအချက်အလက်များကို ပြင်ဆင်နိုင်သော စာမျက်နှာ။
*   **Descriptions**: အရာတစ်ခု သို့မဟုတ် မေးခွန်းတစ်ခု၏ အသေးစိတ်ဖော်ပြချက်။
*   **Alignment**: အဖွဲ့ဝင်များ သို့မဟုတ် စနစ်များကြား နားလည်မှုနှင့် ပူးပေါင်းဆောင်ရွက်မှု ညီညွတ်ခြင်း။
*   **Blogpost**: အွန်လိုင်းဘလော့ဂ်တွင် ဖော်ပြထားသော ဆောင်းပါး သို့မဟုတ် ရေးသားချက်။
*   **Bibliographical References**: စာတမ်း သို့မဟုတ် စာအုပ်တွင် ကိုးကားထားသော အခြားစာတမ်းများ သို့မဟုတ် စာအုပ်များ။
*   **Dataset Distribution Settings**: Argilla တွင် dataset ၏ records များကို annotators များကြား မည်သို့ ဖြန့်ဝေမည်ကို ထိန်းချုပ်သော settings များ။
*   **Submitted Responses**: annotator တစ်ဦးက record တစ်ခုအတွက် ပေးပြီး လက်ခံထားသော အဖြေများ။
*   **Record**: dataset အတွင်းရှိ တစ်ခုချင်းစီသော data entry။
*   **Progress**: dataset annotation လုပ်ငန်းစဉ်၏ တိုးတက်မှု အခြေအနေ။
*   **Inter-annotator Agreement**: မတူညီသော annotators များက တူညီသော ဒေတာအပိုင်းအစများကို မည်မျှ တူညီစွာ label လုပ်သည်ကို တိုင်းတာခြင်း။
*   **Annotators**: ဒေတာများကို annotation လုပ်ဆောင်သူ လူပုဂ္ဂိုလ်များ။
*   **Hugging Face Space**: Hugging Face Hub ၏ အစိတ်အပိုင်းတစ်ခုဖြစ်ပြီး ML demos များနှင့် applications များကို host လုပ်သည်။
*   **Hugging Face OAuth**: Hugging Face platform မှတဆင့် သုံးစွဲသူများကို ခွင့်ပြုချက် (authentication) ပေးသော စနစ်။
*   **Log in**: စနစ်တစ်ခု သို့မဟုတ် application တစ်ခုသို့ ဝင်ရောက်ခြင်း။
*   **Users**: စနစ် သို့မဟုတ် application ကို အသုံးပြုသူများ။
*   **`label` (Question Name)**: Argilla တွင် မေးခွန်းတစ်ခု၏ နာမည်။
*   **`label_text` Column**: dataset အတွင်းရှိ စာသား labels များ ပါဝင်သော column။
*   **Review and Correct**: ရှိပြီးသားအချက်အလက်များကို ပြန်လည်စစ်ဆေးပြီး မှားယွင်းမှုများကို ပြင်ဆင်ခြင်း။
*   **Token Classification**: စာသား sequence တစ်ခုအတွင်းရှိ token တစ်ခုစီကို အမျိုးအစားခွဲခြားသတ်မှတ်ခြင်း လုပ်ငန်း (ဥပမာ- Named Entity Recognition)။
*   **Suggestions**: annotation လုပ်ငန်းစဉ်တွင် annotator များအတွက် ပံ့ပိုးပေးသော အကြံပြုထားသည့် labels များ။
*   **Manually**: လူကိုယ်တိုင် လုပ်ဆောင်ခြင်း။
*   **Span Annotations**: စာသားအပိုင်းအစ (span) များကို တိကျ